* The font width should now be computed correctly for dual-width fonts.
Patch: fix-fc-dual-font-width-calculation.diff
Provided-by: Sven Joachim <svenjoac@gmx.de>
Date: Mon, 12 Jul 2010 16:32:53 +0200
Added-by: Rob Browning <rlb@defaultvalue.org>
Status: incorporated upstream
The Debian patch is taken from this upstream commit:
revno: 99907
author: Naohiro Aota <naota@elisp.net>
committer: Chong Yidong <cyd@stupidchicken.com>
branch nick: emacs-23
timestamp: Wed 2010-06-30 10:22:18 -0400
message:
Check FC_DUAL too. For such fonts, check width one by one (Bug#4129).
* xftfont.c (xftfont_open): Check font width one by one also when
spacing is dual.
* ftfont.c (ftfont_open): Ditto.
* eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA
(Bug#6214).
+2010-06-30 Naohiro Aota <naota@elisp.net> (tiny change)
+
+ * xftfont.c (xftfont_open): Check font width one by one also when
+ spacing is dual.
+
+ * ftfont.c (ftfont_open): Ditto.
+
2010-05-18 Chong Yidong <cyd@stupidchicken.com>
* character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
spacing = XINT (AREF (entity, FONT_SPACING_INDEX));
else
spacing = FC_PROPORTIONAL;
- if (spacing != FC_PROPORTIONAL)
+ if (spacing != FC_PROPORTIONAL && spacing != FC_DUAL)
font->min_width = font->average_width = font->space_width
= (scalable ? ft_face->max_advance_width * size / upEM
: ft_face->size->metrics.max_advance >> 6);
ascii_printable[i] = ' ' + i;
}
BLOCK_INPUT;
- if (spacing != FC_PROPORTIONAL)
+ if (spacing != FC_PROPORTIONAL && spacing != FC_DUAL)
{
font->min_width = font->average_width = font->space_width
= xftfont->max_advance_width;